﻿using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
using SIGEB.Prototipo.Control;

namespace SIGEB.Prototipo.Vista
{
    public partial class frm_IMEC : frm_ModuloBase
    {
        public frm_IMEC():base()
        {
            InitializeComponent();
            estado = new estadoVentanaImec();
        }

        public frm_IMEC(controlPrincipal cp):base(cp)
        {
            InitializeComponent();
            asignarUI(this.Controls);
            estado = new estadoVentanaImec();
            btn_Nuevo.Cargar(SIGEB.Prototipo.Properties.Resources.crear);
            btn_editar.Cargar(SIGEB.Prototipo.Properties.Resources.editar);
            btn_eliminar.Cargar(SIGEB.Prototipo.Properties.Resources.eliminar);
            btn_cancelar.Cargar(SIGEB.Prototipo.Properties.Resources.cancelar);
            btn_guardar.Cargar(SIGEB.Prototipo.Properties.Resources.guardar);
        }

        protected int iniciarBusqueda(string criterio, string[] columnas_names)
        {
            int i = 0;
            if (dgv_busqueda.Rows.Count > 0)
            {
                foreach (DataGridViewRow dgvr in dgv_busqueda.Rows)
                {
                    if (realizarBusqueda(dgvr, criterio, columnas_names)) //System.Text.RegularExpressions.Regex.IsMatch(dgvr.Cells[col].Value.ToString(), criterio, System.Text.RegularExpressions.RegexOptions.IgnoreCase))
                    {
                        i++;
                    }
                    else
                    {
                        dgvr.Visible = false;
                    }
                }
            }
            return i;
        }

        protected bool realizarBusqueda(DataGridViewRow dgvr, string criterio, string[] columnas_names)
        {
            foreach (string col in columnas_names)
            {
                if (System.Text.RegularExpressions.Regex.IsMatch(dgvr.Cells[col].Value.ToString(), criterio, System.Text.RegularExpressions.RegexOptions.IgnoreCase))
                {
                    return true;
                }
            }
            return false;
        }

        protected void finalizarBusqueda()
        {
            if (dgv_busqueda.Rows.Count > 0)
            {
                foreach (DataGridViewRow dgvr in dgv_busqueda.Rows)
                {
                    dgvr.Visible = true;
                }
            }
        }

        protected bool modoB = false;
        protected DataGridView dgv_busqueda;
        protected estadoVentanaImec estado;
    }
}
